package com.yuandian.middle.platform.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yuandian.api.middle_platform.po.AlarmDetailPojo;
import com.yuandian.api.middle_platform.po.OrgAbilityParam;
import com.yuandian.api.middle_platform.po.OverViewParam;
import com.yuandian.api.middle_platform.vo.OrgOverviewDetailVo;
import com.yuandian.api.middle_platform.vo.OrgTypeAbnormalAbilityVo;
import com.yuandian.api.middle_platform.vo.OrgTypeAlarmVo;
import com.yuandian.api.middle_platform.vo.OverviewDataVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author lijunhang
 * @date 2023年05月24日 11:05
 * @description 概览及概览详情接口
 */
@Mapper
public interface PlatformOverviewMapper {

	/**
	 * 全部部门类型告警数查询
	 * 部门类型，告警数
	 * 查询告警明细表，告警标识为1的数据
	 * @param param
	 * @return
	 */
	List<OrgTypeAlarmVo> orgTypeAlarmStatistics(@Param("param")OverViewParam param);

	/**
	 * 全部部门类型告警数查询
	 * 部门类型，告警数
	 * 查询告警明细表，告警标识为1的数据
	 * @param param
	 * @return
	 */
	List<OrgTypeAlarmVo> specialOrgTypeAlarmStatistics(@Param("param")OverViewParam param);


	/**
	 * 全部部门类型异常能力数查询
	 * @param param
	 * @return
	 */
	List<OrgTypeAbnormalAbilityVo> orgTypeAbnormalAbility(@Param("param")OverViewParam param);

	/**
	 * 特殊部门类型异常能力数查询
	 * @param param
	 * @return
	 */
	List<OrgTypeAbnormalAbilityVo> specialOrgTypeAbnormalAbility(@Param("param")OverViewParam param);


	/**
	 * 查询告警数据
	 * @param param 参数对象
	 */
	List<OrgOverviewDetailVo> overviewDetailList(@Param("page") IPage<OrgOverviewDetailVo> page, @Param("param") OverViewParam param);
}
